/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import modelo.Modalidade;

/**
 *
 * @author Aluno
 */
public class ModalidadeDAO {
    Connection conn;
    public ModalidadeDAO() {
        
        try {
            conn = new Conexao().getConexao();
        } catch (SQLException ex) {
            Logger.getLogger(ModalidadeDAO.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
    
    
     public void inserir(Modalidade mod){
      String sql = " INSERT INTO modalidade "+ "(descrição,id_modalidaded)"+ "VALUES(?,?)";
      try
            (PreparedStatement pstmt = this.conn.prepareStatement(sql)){
             pstmt.setString(1,mod.getDescricao());
             pstmt.setInt(2, mod.getId_modalidade());
      } catch (SQLException ex) {
            
        }
}
         public void excluir(int id_modalidade) {
         String sql = "DELETE FROM modalidade WHERE id_modalidade" + id_modalidade;
          try
           (Statement stmt = this.conn.prepareStatement(sql)){
              if(stmt.executeUpdate(sql)!=0){
                  JOptionPane.showMessageDialog(null,"modalidade excluida com sucesso");
              }
     }  catch (SQLException ex) {
            Logger.getLogger(ApoiadorDAO.class.getName()).log(Level.SEVERE, null, ex);
        }

}
         public void alterar(Modalidade mod){
              String sql = "UPDATE Modalidade SET" + 
                  "descricao?,id_modalidade?" +
                  "WHERE id_modalidade=?";
              try
                  (PreparedStatement pstmt = this.conn.prepareStatement(sql); ){
                  pstmt.setString(1,mod.getDescricao());
                  pstmt.setInt(2,mod.getId_modalidade());
                if(pstmt.executeUpdate(sql)!=0){
                  JOptionPane.showMessageDialog(null,"modalidade cadastrada com sucesso" + "essas grades não te prendem mano");
                }  
              } catch (SQLException ex) {
            System.out.println("SQLException em alterar" + "erro detectado"+ "essas grades não te prendem mano" + ex.getMessage());
        }
         }
         public ArrayList<Modalidade> consultar(){
             String sql = "SELECT FROM Modalidade WHERE descricao " + "lIKE"+" 1 ORDER BY descricao ";
           ArrayList<Modalidade>modalidade = new ArrayList<>();
           Modalidade mod;
           try(Statement stmt = this.conn.createStatement();
               ResultSet rs = stmt.executeQuery(sql); ){
              while(rs.next()){
                mod = new Modalidade();
                mod.setDescricao(rs.getString("Descricao"));
                mod.setId_modalidade(rs.getInt("id_modalidade"));
                modalidade.add(mod);
              } 
               stmt.close();
               rs.close();
               return modalidade;
           } catch (SQLException ex) {
           System.out.println("SQLException em adicionar" + "erro detectado" + "essas grades não te prendem mano" + ex.getMessage());
        }
        return null;
         
         }
         public ArrayList<Modalidade> listar(){
           String sql = "SELECT * FROM modalidade";
           ArrayList<Modalidade>modalidade = new ArrayList<>();
           Modalidade mod;
           try(Statement stmt = this.conn.createStatement();
                ResultSet rs = stmt.executeQuery(sql);){
               while(rs.next()){ 
               mod = new Modalidade();
                mod.setDescricao(rs.getString("Descricao"));
                mod.setId_modalidade(rs.getInt("id_modalidade"));
                modalidade.add(mod);
               }
               stmt.close();
               rs.close();
               return modalidade;
             
         } catch (SQLException ex) {
            System.out.println("SQLExcption em listar" + "erro detectado"+ "essas grades não te prendem mano" + ex.getMessage());
        }
        return null;
     
}
}
